<!-- HTML header for doxygen 1.8.18-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Ipopt: Ipopt::CachedResults&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="stylesheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 40px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Ipopt Documentation
   &#160;<!--span id="projectnumber">3.14.12</span-->
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classIpopt_1_1CachedResults.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classIpopt_1_1CachedResults-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Ipopt::CachedResults&lt; T &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Templated class for Cached Results.  
 <a href="classIpopt_1_1CachedResults.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for Ipopt::CachedResults&lt; T &gt;:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classIpopt_1_1CachedResults__inherit__graph.png" border="0" usemap="#Ipopt_1_1CachedResults_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="Ipopt_1_1CachedResults_3_01T_01_4_inherit__map" id="Ipopt_1_1CachedResults_3_01T_01_4_inherit__map">
<area shape="rect" title="Templated class for Cached Results." alt="" coords="5,283,203,309"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="436,19,657,90"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="454,115,639,171"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="455,195,638,251"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="467,275,626,317"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="467,341,626,382"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="454,407,639,463"/>
<area shape="rect" href="classIpopt_1_1CachedResults.html" title=" " alt="" coords="454,487,639,543"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4f5dbf98deb6438dd5cef7162600c3b5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a4f5dbf98deb6438dd5cef7162600c3b5">InvalidateResult</a> (const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;dependents, const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;scalar_dependents)</td></tr>
<tr class="memdesc:a4f5dbf98deb6438dd5cef7162600c3b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalidates the result for given dependencies.  <a href="classIpopt_1_1CachedResults.html#a4f5dbf98deb6438dd5cef7162600c3b5">More...</a><br /></td></tr>
<tr class="separator:a4f5dbf98deb6438dd5cef7162600c3b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1382321cb2355b6a06cf77ebf3dbd9c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a1382321cb2355b6a06cf77ebf3dbd9c7">Clear</a> ()</td></tr>
<tr class="memdesc:a1382321cb2355b6a06cf77ebf3dbd9c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalidates all cached results.  <a href="classIpopt_1_1CachedResults.html#a1382321cb2355b6a06cf77ebf3dbd9c7">More...</a><br /></td></tr>
<tr class="separator:a1382321cb2355b6a06cf77ebf3dbd9c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b91e184dc7a61d7b5f980fe3e427c47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a9b91e184dc7a61d7b5f980fe3e427c47">Clear</a> (int max_cache_size)</td></tr>
<tr class="memdesc:a9b91e184dc7a61d7b5f980fe3e427c47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalidate all cached results and changes max_cache_size.  <a href="classIpopt_1_1CachedResults.html#a9b91e184dc7a61d7b5f980fe3e427c47">More...</a><br /></td></tr>
<tr class="separator:a9b91e184dc7a61d7b5f980fe3e427c47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Constructors and Destructors.</div></td></tr>
<tr class="memitem:a95da391d00cebb8bd60fd9bafd1b301f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a95da391d00cebb8bd60fd9bafd1b301f">CachedResults</a> (int max_cache_size)</td></tr>
<tr class="memdesc:a95da391d00cebb8bd60fd9bafd1b301f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="classIpopt_1_1CachedResults.html#a95da391d00cebb8bd60fd9bafd1b301f">More...</a><br /></td></tr>
<tr class="separator:a95da391d00cebb8bd60fd9bafd1b301f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5e2f2a7463c31a5653e222c8cb463ef"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#ab5e2f2a7463c31a5653e222c8cb463ef">~CachedResults</a> ()</td></tr>
<tr class="memdesc:ab5e2f2a7463c31a5653e222c8cb463ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="classIpopt_1_1CachedResults.html#ab5e2f2a7463c31a5653e222c8cb463ef">More...</a><br /></td></tr>
<tr class="separator:ab5e2f2a7463c31a5653e222c8cb463ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Generic methods for adding and retrieving cached results.</div></td></tr>
<tr class="memitem:afba0afd9676949945bbedfee4d777078"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#afba0afd9676949945bbedfee4d777078">AddCachedResult</a> (const T &amp;result, const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;dependents, const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;scalar_dependents)</td></tr>
<tr class="memdesc:afba0afd9676949945bbedfee4d777078"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic method for adding a result to the cache, given a std::vector of TaggesObjects and a std::vector of Numbers.  <a href="classIpopt_1_1CachedResults.html#afba0afd9676949945bbedfee4d777078">More...</a><br /></td></tr>
<tr class="separator:afba0afd9676949945bbedfee4d777078"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64fdbc021c61cc1aafb4f6895fe620fd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a64fdbc021c61cc1aafb4f6895fe620fd">GetCachedResult</a> (T &amp;retResult, const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;dependents, const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;scalar_dependents) const</td></tr>
<tr class="memdesc:a64fdbc021c61cc1aafb4f6895fe620fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic method for retrieving a cached results, given the dependencies as a std::vector of TaggesObjects and a std::vector of Numbers.  <a href="classIpopt_1_1CachedResults.html#a64fdbc021c61cc1aafb4f6895fe620fd">More...</a><br /></td></tr>
<tr class="separator:a64fdbc021c61cc1aafb4f6895fe620fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88113643817cd0d0082ec183821bf09d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a88113643817cd0d0082ec183821bf09d">AddCachedResult</a> (const T &amp;result, const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;dependents)</td></tr>
<tr class="memdesc:a88113643817cd0d0082ec183821bf09d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for adding a result, providing only a std::vector of TaggedObjects.  <a href="classIpopt_1_1CachedResults.html#a88113643817cd0d0082ec183821bf09d">More...</a><br /></td></tr>
<tr class="separator:a88113643817cd0d0082ec183821bf09d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a628f2f640edad55e12865df6033d5ee5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a628f2f640edad55e12865df6033d5ee5">GetCachedResult</a> (T &amp;retResult, const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;dependents) const</td></tr>
<tr class="memdesc:a628f2f640edad55e12865df6033d5ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for retrieving a cached result, providing only a std::vector of TaggedObjects.  <a href="classIpopt_1_1CachedResults.html#a628f2f640edad55e12865df6033d5ee5">More...</a><br /></td></tr>
<tr class="separator:a628f2f640edad55e12865df6033d5ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Pointer-based methods for adding and retrieving cached</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>results, providing dependencies explicitly. </p>
</div></td></tr>
<tr class="memitem:a36996b6361fa40dad91cc3b747648fc6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a36996b6361fa40dad91cc3b747648fc6">AddCachedResult1Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1)</td></tr>
<tr class="memdesc:a36996b6361fa40dad91cc3b747648fc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for adding a result to the cache, proving one dependency as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#a36996b6361fa40dad91cc3b747648fc6">More...</a><br /></td></tr>
<tr class="separator:a36996b6361fa40dad91cc3b747648fc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ef188cd7f04c95003daa769d229cba6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a4ef188cd7f04c95003daa769d229cba6">GetCachedResult1Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1)</td></tr>
<tr class="memdesc:a4ef188cd7f04c95003daa769d229cba6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for retrieving a cached result, proving one dependency as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#a4ef188cd7f04c95003daa769d229cba6">More...</a><br /></td></tr>
<tr class="separator:a4ef188cd7f04c95003daa769d229cba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3435d925d46d468ecd8613e260ccdf03"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a3435d925d46d468ecd8613e260ccdf03">AddCachedResult2Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent2)</td></tr>
<tr class="memdesc:a3435d925d46d468ecd8613e260ccdf03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for adding a result to the cache, proving two dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#a3435d925d46d468ecd8613e260ccdf03">More...</a><br /></td></tr>
<tr class="separator:a3435d925d46d468ecd8613e260ccdf03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d30bb9b9e169149399eb08e5f9c1093"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a9d30bb9b9e169149399eb08e5f9c1093">GetCachedResult2Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent2)</td></tr>
<tr class="memdesc:a9d30bb9b9e169149399eb08e5f9c1093"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for retrieving a cached result, proving two dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#a9d30bb9b9e169149399eb08e5f9c1093">More...</a><br /></td></tr>
<tr class="separator:a9d30bb9b9e169149399eb08e5f9c1093"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accf76263cb1c063a27ebe1241168dcda"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#accf76263cb1c063a27ebe1241168dcda">AddCachedResult3Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent2, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent3)</td></tr>
<tr class="memdesc:accf76263cb1c063a27ebe1241168dcda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for adding a result to the cache, proving three dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#accf76263cb1c063a27ebe1241168dcda">More...</a><br /></td></tr>
<tr class="separator:accf76263cb1c063a27ebe1241168dcda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d17879794ab26aa871710aa6e459c88"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a6d17879794ab26aa871710aa6e459c88">GetCachedResult3Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent2, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *dependent3)</td></tr>
<tr class="memdesc:a6d17879794ab26aa871710aa6e459c88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for retrieving a cached result, proving three dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly.  <a href="classIpopt_1_1CachedResults.html#a6d17879794ab26aa871710aa6e459c88">More...</a><br /></td></tr>
<tr class="separator:a6d17879794ab26aa871710aa6e459c88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Pointer-free version of the Add and Get methods</div></td></tr>
<tr class="memitem:ade3ae40c720febaa2d66481c5a9da548"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#ade3ae40c720febaa2d66481c5a9da548">GetCachedResult1Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1)</td></tr>
<tr class="separator:ade3ae40c720febaa2d66481c5a9da548"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40be0bcca6bd2cad35c5e1865f96188f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a40be0bcca6bd2cad35c5e1865f96188f">GetCachedResult2Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent2)</td></tr>
<tr class="separator:a40be0bcca6bd2cad35c5e1865f96188f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9cc797fa9d398454c758079899eb863"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#ae9cc797fa9d398454c758079899eb863">GetCachedResult3Dep</a> (T &amp;retResult, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent2, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent3)</td></tr>
<tr class="separator:ae9cc797fa9d398454c758079899eb863"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7d93e6bf4d2bf76f38391dbe766bdc9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#ab7d93e6bf4d2bf76f38391dbe766bdc9">AddCachedResult1Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1)</td></tr>
<tr class="separator:ab7d93e6bf4d2bf76f38391dbe766bdc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af39887ebf63f7dd3d4d651179fb9d007"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#af39887ebf63f7dd3d4d651179fb9d007">AddCachedResult2Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent2)</td></tr>
<tr class="separator:af39887ebf63f7dd3d4d651179fb9d007"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a0618748095bc4767ba008aebab1633"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a6a0618748095bc4767ba008aebab1633">AddCachedResult3Dep</a> (const T &amp;result, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent1, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent2, const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;dependent3)</td></tr>
<tr class="separator:a6a0618748095bc4767ba008aebab1633"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a6f65c53c87a03c3045d74fbdd1af57e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a6f65c53c87a03c3045d74fbdd1af57e5">CleanupInvalidatedResults</a> () const</td></tr>
<tr class="memdesc:a6f65c53c87a03c3045d74fbdd1af57e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">internal method for removing stale DependentResults from the list  <a href="classIpopt_1_1CachedResults.html#a6f65c53c87a03c3045d74fbdd1af57e5">More...</a><br /></td></tr>
<tr class="separator:a6f65c53c87a03c3045d74fbdd1af57e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bde127abd6894d6864cc48061c4d053"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a2bde127abd6894d6864cc48061c4d053">DebugPrintCachedResults</a> () const</td></tr>
<tr class="memdesc:a2bde127abd6894d6864cc48061c4d053"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print list of currently cached results.  <a href="classIpopt_1_1CachedResults.html#a2bde127abd6894d6864cc48061c4d053">More...</a><br /></td></tr>
<tr class="separator:a2bde127abd6894d6864cc48061c4d053"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Default Compiler Generated Methods</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>(Hidden to avoid implicit creation/calling).</p>
<p>These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called. </p>
</div></td></tr>
<tr class="memitem:a02da3d9dba67c2c1393e127256a8ce75"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a02da3d9dba67c2c1393e127256a8ce75">CachedResults</a> ()</td></tr>
<tr class="memdesc:a02da3d9dba67c2c1393e127256a8ce75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor.  <a href="classIpopt_1_1CachedResults.html#a02da3d9dba67c2c1393e127256a8ce75">More...</a><br /></td></tr>
<tr class="separator:a02da3d9dba67c2c1393e127256a8ce75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52bca50f280a276ec29d37263af06dc1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a52bca50f280a276ec29d37263af06dc1">CachedResults</a> (const <a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a> &amp;)</td></tr>
<tr class="memdesc:a52bca50f280a276ec29d37263af06dc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy Constructor.  <a href="classIpopt_1_1CachedResults.html#a52bca50f280a276ec29d37263af06dc1">More...</a><br /></td></tr>
<tr class="separator:a52bca50f280a276ec29d37263af06dc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a094616862992ae284450b1feb074cfcc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a094616862992ae284450b1feb074cfcc">operator=</a> (const <a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a> &amp;)</td></tr>
<tr class="memdesc:a094616862992ae284450b1feb074cfcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Assignment Operator.  <a href="classIpopt_1_1CachedResults.html#a094616862992ae284450b1feb074cfcc">More...</a><br /></td></tr>
<tr class="separator:a094616862992ae284450b1feb074cfcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a910a723286635abe7907bde3ae5c6eb2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a910a723286635abe7907bde3ae5c6eb2">max_cache_size_</a></td></tr>
<tr class="memdesc:a910a723286635abe7907bde3ae5c6eb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">maximum number of cached results  <a href="classIpopt_1_1CachedResults.html#a910a723286635abe7907bde3ae5c6eb2">More...</a><br /></td></tr>
<tr class="separator:a910a723286635abe7907bde3ae5c6eb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ead55fd598e27c70f0b1c3a06e7cd06"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="el" href="classIpopt_1_1DependentResult.html">DependentResult</a>&lt; T &gt; * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1CachedResults.html#a0ead55fd598e27c70f0b1c3a06e7cd06">cached_results_</a></td></tr>
<tr class="memdesc:a0ead55fd598e27c70f0b1c3a06e7cd06"><td class="mdescLeft">&#160;</td><td class="mdescRight">list of currently cached results.  <a href="classIpopt_1_1CachedResults.html#a0ead55fd598e27c70f0b1c3a06e7cd06">More...</a><br /></td></tr>
<tr class="separator:a0ead55fd598e27c70f0b1c3a06e7cd06"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class T&gt;<br />
class Ipopt::CachedResults&lt; T &gt;</h3>

<p>Templated class for Cached Results. </p>
<p>This class stores up to a given number of "results", entities that are stored here together with identifiers, that can be used to later retrieve the information again.</p>
<p>Typically, T is a <a class="el" href="classIpopt_1_1SmartPtr.html" title="Template class for Smart Pointers.">SmartPtr</a> for some calculated quantity that should be stored (such as a <a class="el" href="classIpopt_1_1Vector.html" title="Vector Base Class.">Vector</a>). The identifiers (or dependencies) are a (possibly varying) number of Tags from TaggedObjects, and a number of Numbers. Results are added to the cache using the AddCachedResults methods, and the can be retrieved with the GetCachedResults methods. The second set of methods checks whether a result has been cached for the given identifiers. If a corresponding result is found, a copy of it is returned and the method evaluates to true, otherwise it evaluates to false.</p>
<p>Note that cached results can become "stale", namely when a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> that is used to identify this CachedResult is changed. When this happens, the cached result can never be asked for again, so that there is no point in storing it any longer. For this purpose, a cached result, which is stored as a <a class="el" href="classIpopt_1_1DependentResult.html" title="Templated class which stores one entry for the CachedResult class.">DependentResult</a>, inherits off an <a class="el" href="classIpopt_1_1Observer.html" title="Slight Variation of the Observer Design Pattern.">Observer</a>. This <a class="el" href="classIpopt_1_1Observer.html" title="Slight Variation of the Observer Design Pattern.">Observer</a> retrieves notification whenever a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> dependency has changed. Stale results are later removed from the cache. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00068">68</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a95da391d00cebb8bd60fd9bafd1b301f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95da391d00cebb8bd60fd9bafd1b301f">&#9670;&nbsp;</a></span>CachedResults() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::<a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a> </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_cache_size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">max_cache_size</td><td>maximal number of results that should be cached, negative for infinity </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00549">549</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="ab5e2f2a7463c31a5653e222c8cb463ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5e2f2a7463c31a5653e222c8cb463ef">&#9670;&nbsp;</a></span>~CachedResults()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::~<a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destructor. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00562">562</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a02da3d9dba67c2c1393e127256a8ce75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02da3d9dba67c2c1393e127256a8ce75">&#9670;&nbsp;</a></span>CachedResults() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::<a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default Constructor. </p>

</div>
</div>
<a id="a52bca50f280a276ec29d37263af06dc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52bca50f280a276ec29d37263af06dc1">&#9670;&nbsp;</a></span>CachedResults() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::<a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a>&lt; T &gt; &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy Constructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="afba0afd9676949945bbedfee4d777078"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afba0afd9676949945bbedfee4d777078">&#9670;&nbsp;</a></span>AddCachedResult() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>dependents</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>scalar_dependents</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generic method for adding a result to the cache, given a std::vector of TaggesObjects and a std::vector of Numbers. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00587">587</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a64fdbc021c61cc1aafb4f6895fe620fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64fdbc021c61cc1aafb4f6895fe620fd">&#9670;&nbsp;</a></span>GetCachedResult() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>dependents</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>scalar_dependents</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generic method for retrieving a cached results, given the dependencies as a std::vector of TaggesObjects and a std::vector of Numbers. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00638">638</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a88113643817cd0d0082ec183821bf09d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88113643817cd0d0082ec183821bf09d">&#9670;&nbsp;</a></span>AddCachedResult() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>dependents</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for adding a result, providing only a std::vector of TaggedObjects. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00628">628</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a628f2f640edad55e12865df6033d5ee5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a628f2f640edad55e12865df6033d5ee5">&#9670;&nbsp;</a></span>GetCachedResult() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>dependents</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for retrieving a cached result, providing only a std::vector of TaggedObjects. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00672">672</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a36996b6361fa40dad91cc3b747648fc6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36996b6361fa40dad91cc3b747648fc6">&#9670;&nbsp;</a></span>AddCachedResult1Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult1Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for adding a result to the cache, proving one dependency as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00682">682</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a4ef188cd7f04c95003daa769d229cba6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ef188cd7f04c95003daa769d229cba6">&#9670;&nbsp;</a></span>GetCachedResult1Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult1Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for retrieving a cached result, proving one dependency as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00698">698</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a3435d925d46d468ecd8613e260ccdf03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3435d925d46d468ecd8613e260ccdf03">&#9670;&nbsp;</a></span>AddCachedResult2Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult2Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for adding a result to the cache, proving two dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00714">714</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a9d30bb9b9e169149399eb08e5f9c1093"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d30bb9b9e169149399eb08e5f9c1093">&#9670;&nbsp;</a></span>GetCachedResult2Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult2Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for retrieving a cached result, proving two dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00733">733</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="accf76263cb1c063a27ebe1241168dcda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#accf76263cb1c063a27ebe1241168dcda">&#9670;&nbsp;</a></span>AddCachedResult3Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult3Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for adding a result to the cache, proving three dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00751">751</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a6d17879794ab26aa871710aa6e459c88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d17879794ab26aa871710aa6e459c88">&#9670;&nbsp;</a></span>GetCachedResult3Dep() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult3Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> *&#160;</td>
          <td class="paramname"><em>dependent3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Method for retrieving a cached result, proving three dependencies as a <a class="el" href="classIpopt_1_1TaggedObject.html" title="TaggedObject class.">TaggedObject</a> explicitly. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00771">771</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="ade3ae40c720febaa2d66481c5a9da548"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade3ae40c720febaa2d66481c5a9da548">&#9670;&nbsp;</a></span>GetCachedResult1Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult1Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00181">181</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a40be0bcca6bd2cad35c5e1865f96188f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40be0bcca6bd2cad35c5e1865f96188f">&#9670;&nbsp;</a></span>GetCachedResult2Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult2Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00189">189</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="ae9cc797fa9d398454c758079899eb863"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9cc797fa9d398454c758079899eb863">&#9670;&nbsp;</a></span>GetCachedResult3Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::GetCachedResult3Dep </td>
          <td>(</td>
          <td class="paramtype">T &amp;&#160;</td>
          <td class="paramname"><em>retResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00198">198</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="ab7d93e6bf4d2bf76f38391dbe766bdc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7d93e6bf4d2bf76f38391dbe766bdc9">&#9670;&nbsp;</a></span>AddCachedResult1Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult1Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00207">207</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="af39887ebf63f7dd3d4d651179fb9d007"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af39887ebf63f7dd3d4d651179fb9d007">&#9670;&nbsp;</a></span>AddCachedResult2Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult2Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00215">215</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a6a0618748095bc4767ba008aebab1633"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a0618748095bc4767ba008aebab1633">&#9670;&nbsp;</a></span>AddCachedResult3Dep() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::AddCachedResult3Dep </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> &amp;&#160;</td>
          <td class="paramname"><em>dependent3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00224">224</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a4f5dbf98deb6438dd5cef7162600c3b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f5dbf98deb6438dd5cef7162600c3b5">&#9670;&nbsp;</a></span>InvalidateResult()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::InvalidateResult </td>
          <td>(</td>
          <td class="paramtype">const std::vector&lt; const <a class="el" href="classIpopt_1_1TaggedObject.html">TaggedObject</a> * &gt; &amp;&#160;</td>
          <td class="paramname"><em>dependents</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::vector&lt; <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>scalar_dependents</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalidates the result for given dependencies. </p>
<p>Sets the stale flag for the corresponding cached result to true if it is found. </p><dl class="section return"><dt>Returns</dt><dd>true, if the result was found </dd></dl>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00791">791</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a1382321cb2355b6a06cf77ebf3dbd9c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1382321cb2355b6a06cf77ebf3dbd9c7">&#9670;&nbsp;</a></span>Clear() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::Clear</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalidates all cached results. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00816">816</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a9b91e184dc7a61d7b5f980fe3e427c47"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b91e184dc7a61d7b5f980fe3e427c47">&#9670;&nbsp;</a></span>Clear() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::Clear </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_cache_size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalidate all cached results and changes max_cache_size. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00832">832</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a094616862992ae284450b1feb074cfcc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a094616862992ae284450b1feb074cfcc">&#9670;&nbsp;</a></span>operator=()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1CachedResults.html">CachedResults</a>&lt; T &gt; &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default Assignment Operator. </p>

</div>
</div>
<a id="a6f65c53c87a03c3045d74fbdd1af57e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f65c53c87a03c3045d74fbdd1af57e5">&#9670;&nbsp;</a></span>CleanupInvalidatedResults()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::CleanupInvalidatedResults</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>internal method for removing stale DependentResults from the list </p>
<p>It is called at the beginning of every GetDependentResult method. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00841">841</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a2bde127abd6894d6864cc48061c4d053"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bde127abd6894d6864cc48061c4d053">&#9670;&nbsp;</a></span>DebugPrintCachedResults()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::DebugPrintCachedResults</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Print list of currently cached results. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00871">871</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a910a723286635abe7907bde3ae5c6eb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a910a723286635abe7907bde3ae5c6eb2">&#9670;&nbsp;</a></span>max_cache_size_</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::max_cache_size_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>maximum number of cached results </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00280">280</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<a id="a0ead55fd598e27c70f0b1c3a06e7cd06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ead55fd598e27c70f0b1c3a06e7cd06">&#9670;&nbsp;</a></span>cached_results_</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;<a class="el" href="classIpopt_1_1DependentResult.html">DependentResult</a>&lt;T&gt;*&gt;* <a class="el" href="classIpopt_1_1CachedResults.html">Ipopt::CachedResults</a>&lt; T &gt;::cached_results_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">mutable</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>list of currently cached results. </p>

<p class="definition">Definition at line <a class="el" href="IpCachedResults_8hpp_source.html#l00283">283</a> of file <a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/Common/<a class="el" href="IpCachedResults_8hpp_source.html">IpCachedResults.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
</body>
</html>
